package com.liuqing.www.java基础知识.网络通信;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;

/**
 * 简单的不可靠的无连接的网络数据传输协议
 * Datagram socket====Socket
 * Datagram packet数据包包发送数据封装
 * @author 韩世超
 *
 */
public class UDP协议详解 {
	public static void main(String[] args) {
		byte[] bls=new byte[100];
		try{
		//<!----**********服务器端*开始*******************/
			DatagramSocket sercver=new DatagramSocket(8000);
			while(true){
				DatagramPacket dp=new DatagramPacket(bls,bls.length);
				sercver.receive(dp);//改方法阻断，直到接受到数据
				dp.getAddress();
				dp.getPort();
				dp.setData("....".getBytes());
				sercver.send(dp);
				break;
			}
			//**********服务器端结束********************--!>/
			//<!----**********客户端*开始*******************/
			DatagramSocket client=new DatagramSocket();
			while(true){
				bls="xxxxx".getBytes();
				DatagramPacket dp=new DatagramPacket(bls,bls.length,InetAddress.getByName("localhost"),8000);
				sercver.send(dp);//改方法阻断，直到接受到数据
				dp.getAddress();
				dp.getPort();
				dp.setData("....".getBytes());
				sercver.receive(dp);
			}
		}catch(Exception e){
			
		}
	}
}
